Modifications to the Roaming Militia Generator
Several issues regarding the creation of new Mobile Militia groups have been fixed in HAM. The entire generation system has been streamlined as part of HAM's Militia Overhaul. History Mobile Militia were introduced by Kaiden as a feature for JA2 1.13. There are several settings that control how new Mobile Militia groups are created. By default, Mobile Militia must be trained manually. This is done by assigning a character to train militia in a city that already has a full complement of standing troops. Each such training session costs 3 times the normal Militia training cost, and produces 5 Elite Militia in a nearby sector outside the city. It is also possible to change a setting that makes Mobile Militia spawn automatically (and for free). Unfortunately, the original Militia Generator had its flaws, due to the random nature in which the new Militia group is placed on the map, as well as failure to check whether there is any valid sector to place them at all. Wasted Mobile Militia Training Sessions When assigning a character to train Militia in a city sector, the game checks whether or not the city is already full to the brim (by default, 20 Regular militia in each sector of the city). If this is the case, the player is asked to pay 3 times the normal Militia training cost, in order to train a new Mobile Militia unit outside the city. However, there are two important cases where, upon the end of the training session, no new militia are created at all, wasting both your money and your time. Failed to find a place for the new group :When Mobile Militia training begins, the program does not check to see whether there are any adjacent sectors where a new Mobile Militia unit can be placed at all. This is readily apparent in sectors like Grumm G1. That sector has two adjacent Ocean sectors, and one adjacent City sector. Mobile Militia, by definition, cannot be placed inside the city, and of course they cannot spawn out to the ocean! Therefore, when the training session is complete, the program looks around Grumm G1, realizes that there is no place to put the new militia, and simply aborts the placing process without even notifying to the player that his money and time have been completely wasted. :This sort of error occurs in Grumm G1 and H1. It will also occur in Meduna O3, O4, and P3. Other sectors may also be subject to this error, depending on the circumstances or any map-changing mods. Failed to find room for the new group in adjacent sectors :When Mobile training is completed, the program chooses one of the valid adjacent sectors randomly, and places the new Militia group into that sector. However, it does not check whether the sector is already full of militia. Due to the way the system works, this usually ends up with the new militia simply disappearing. They are not placed in the selected sector (there's no room there) and aren't placed anywhere else. Again, both time and money have been flushed down the drain. :Because Mobile Militia are by nature constantly on the move, it is hard to predict whether (at the time that the training session is completed) there would be any adjacent sectors with free room for the new group. Also, because the target sector is chosen randomly, the training session could also be wasted because the program randomly selects a full sector over a perfectly nice and empty one. HAM 2 - Smarter Placement of New Roaming Militia HAM uses two methods to solve the above problems. This is not a complete fix, as it is still possible to waste a training session - but this is now MUCH less likely, and it is far easier to predict when a training session is going to fail. Sector Validity and Capacity Checks Once the training is completed, HAM's new Mobile Militia Generator will ignore nearby sectors that do not have enough room for the new militia group. It will always prefer placing militia into a completely empty sector. In addition, if the program does have to place those Mobiles into a sector already occupied by another group, it will turn any "overflow" troops into upgrade points, which are used to upgrade the class of one or more of the existing militia troops in the target sector. This of course is only useful if you are also using HAM's Diverse Roaming Militia feature. If that feature is not used, then all Mobile Militia are already Elites and cannot be upgraded. In such a case, it is more likely to waste at least some of the newly trained militia - That is, if the generator chooses an already-occupied sector at all. Non-Sector-Specific Training The original generator was only capable of placing militia in sectors immediately adjacent to the sector where the trainer is working. For instance, training Mobile Militia in sector B13 (Drassen Airport) could only place the new groups in sectors A13, B12, and B14 (D13 is a city, and therefore invalid). This causes a problem in two cases: #If none of the adjacent sectors are valid for placement (see Grumm G1, surrounded by ocean) #If none of the adjacent sectors has room for more militia If HAM's Mobile Militia Generator cannot find a placement spot around the training sector, it'll look through all other controlled sectors of the same city. It checks whether there are any valid placement spots around those other sectors. This solves most of the problem: If there is at least one sector around the city where militia can be placed, they'll automatically go there. For instance, with the Grumm G1 problem, Mobile Militia trained in that sector do not have any adjacent sector to go to, so instead the program checks valid sectors for placement around the entire city perimeter. Usually, the new militia will be placed somewhere around the eastern side of the city, assuming there's enough free space for them there. Upgrading Diverse Militia Groups HAM 2.8 includes a feature that allows training Militia with a different ratio of Elites/Regulars/Greens. In this case, placing newly generated Mobile Militia into a sector that already is full may cause some of those militia members to "upgrade" to the next level. Any troops that have no room in the selected placement sector will be turned into "upgrade points". These points are immediately used to bump some militia members up to a higher class. The number of Upgrade Points you gain depend on the number and type of new militia that could not find a place in the sector. Newly-trained Green Militia are worth 1 point each. Newly-trained Regular Militia are worth 2 points each. Elites are not worth any point - when trained into a sector that has no room for them, they will automatically replace one existing militia of the lowest class they can find. The upgrade points are tallied up. If you have 2 upgrade points available, they are used to upgrade a single Regular militiaman to Elite status. This is repeated as long as there are at least 2 upgrade points left and at least one regular militiaman to upgrade. Then, any remaining points are used to upgrade Green militia to Regular status, at a cost of 1 point per militiaman. Due to the way that the Roaming Militia Generator works, if there are any empty sectors around the city, new Mobile Militia are more likely to be placed there. Therefore, militia upgrades are only likely to occur if the entire city is surrounded by full mobile groups. INI Settings The Smart Mobile Militia Generator is a fix to JA2 1.13's original which was flawed. Therefore, the new system is objectively superior to the old system, and renders it obsolete. Therefore, this feature has no INI settings, and is always enabled. Category:Features